package com.mall.interceptor;

import com.mall.util.JWTUtil;
import com.mall.vo.Result;
import io.jsonwebtoken.Claims;
import org.apache.catalina.connector.Response;
import org.springframework.web.servlet.HandlerInterceptor;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class LoginInterceptor implements HandlerInterceptor {


    //前置通知
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {


        System.out.println("到达拦截器");
//        response.setContentType("application/json;charset=utf-8");
//        Result result = new Result();
//
//        String token = request.getHeader("token");
//        System.out.println(token+"目前的token=====");
//        if(null == token || "".equals(token)){
//            response.getWriter().print( "请先登录1");  //print什么
//            return  false;
//        }
//
//
//        //校验token的有效性
//        try {
//            Claims claims = JWTUtil.parseJwt(token);
//            if(null == claims){
//                throw new Exception();
//            }
//        }catch (Exception e){
//            response.getWriter().print("请先登录2" );
//
//        }
//
//        //时间有效性
//        if(JWTUtil.isExpiration(token)){
//            response.getWriter().print("登录过期，请重新登录");
//            return false;
//
//        }
//
//        Integer id = Integer.parseInt(JWTUtil.getUserId(token));
//        System.out.println(id+"==================================ididididid");
//        request.setAttribute("userId",id);

        return true; //登录后，就把请求交给下一个拦截器
    }
}
